home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.5 Applications 2004 May / SGI IRIX 6.5 Applications 2004 May.iso / dist / java3d.idb / usr / demos / java / j3d / programs / examples / ConfiguredUniverse / j3d1x2-rot30.z / j3d1x2-rot30
Encoding:
Text File  |  2003-08-08  |  3.7 KB  |  95 lines

  1. /*
  2.  *    @(#)j3d1x2-rot30 1.1 01/10/19 20:24:29
  3.  *
  4.  * Copyright (c) 1996-2001 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Redistribution and use in source and binary forms, with or without
  7.  * modification, are permitted provided that the following conditions
  8.  * are met:
  9.  *
  10.  * - Redistributions of source code must retain the above copyright
  11.  *   notice, this list of conditions and the following disclaimer.
  12.  *
  13.  * - Redistribution in binary form must reproduce the above copyright
  14.  *   notice, this list of conditions and the following disclaimer in
  15.  *   the documentation and/or other materials provided with the
  16.  *   distribution.
  17.  *
  18.  * Neither the name of Sun Microsystems, Inc. or the names of
  19.  * contributors may be used to endorse or promote products derived
  20.  * from this software without specific prior written permission.
  21.  *
  22.  * This software is provided "AS IS," without a warranty of any
  23.  * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
  24.  * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
  25.  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
  26.  * EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES
  27.  * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  28.  * DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN
  29.  * OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
  30.  * FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR
  31.  * PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF
  32.  * LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE,
  33.  * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
  34.  *
  35.  * You acknowledge that Software is not designed,licensed or intended
  36.  * for use in the design, construction, operation or maintenance of
  37.  * any nuclear facility.
  38.  */
  39.  
  40. /*
  41.  ************************************************************************
  42.  *  
  43.  * Java 3D configuration file for a dual-screen desktop configuration
  44.  * with each screen rotated toward the other by 30 degrees about Y from
  45.  * planar.  The inside angle between them is 120 degrees.
  46.  *  
  47.  ************************************************************************
  48.  */
  49.  
  50. // Create new screen objects and associate them with logical names and numbers.
  51. // These numbers are used as indices to retrieve the AWT GraphicsDevice from
  52. // the array that GraphicsEnvironment.getScreenDevices() returns.
  53. // 
  54. // NOTE: The GraphicsDevice order in the array is specific to the local
  55. // site and display system.
  56. // 
  57. (NewScreen left  0)
  58. (NewScreen right 1)
  59.  
  60. // Set the available image areas for full screens.
  61. // 
  62. (ScreenAttribute left  PhysicalScreenWidth  0.360)
  63. (ScreenAttribute left  PhysicalScreenHeight 0.288)
  64.  
  65. (ScreenAttribute right PhysicalScreenWidth  0.360)
  66. (ScreenAttribute right PhysicalScreenHeight 0.288)
  67.  
  68. // Specify full screen windows.
  69. // 
  70. (ScreenAttribute left  WindowSize NoBorderFullScreen)
  71. (ScreenAttribute right WindowSize NoBorderFullScreen)
  72.  
  73. // Set the TrackerBaseToImagePlate transforms for these screens.
  74. // 
  75. // The tracker base is set here to the middle of the edge shared by the two
  76. // screens.  Each screen is rotated 30 degrees toward the other about the
  77. // tracker base +Y axis, so that the tracker base +Z is centered between the
  78. // two screens.
  79. //
  80. (ScreenAttribute left  TrackerBaseToImagePlate
  81.                        (RotateTranslate (Rotate     0.000 -30.000 0.0)
  82.                                         (Translate  0.360   0.144 0.0)))
  83.  
  84. (ScreenAttribute right TrackerBaseToImagePlate
  85.                        (RotateTranslate (Rotate     0.000  30.000 0.0)
  86.                                 (Translate  0.000   0.144 0.0)))
  87.  
  88.  
  89. // Create a view using the defined screens.
  90. // 
  91. (NewView view0)
  92. (ViewAttribute view0 Screen left)
  93. (ViewAttribute view0 Screen right)
  94. (ViewAttribute view0 CenterEyeInCoexistence (0.0 0.0 0.45))
  95.